//对axios二次封装
import axios  from "axios";
import nProgress from "nprogress";
import 'nprogress/nprogress.css'


//创建一个axios实例

const mockRrequest = axios.create({
  //配置对象
  //基础路径
  baseURL:'/mock',
  //请求超时时间，在5秒后就结束
  timeout:5000
})

//请求拦截器
mockRrequest.interceptors.request.use((config)=>{
  
  //进度条开始
  nProgress.start()
  
  //配置对象 有一个重要属性 headers
  return config 
})

//响应拦截器
mockRrequest.interceptors.response.use((res)=>{
  
  //进度条结束
  nProgress.done()
  //成功回调函数 返回服务器数据
  return res.data
},(error)=>{
  //失败的回调
  //我们可以结束掉promis链
  return Promise.reject(new Error('faile'));
})

export default mockRrequest
